#pragma once
#include "precomp.h"
#include "Vector3.h"
class ForceGenerator;

class Plane
{
public:
	Plane(void);
	Plane(Vector3f _normal, Vector3f _origin, float damping);
	Plane(const Plane& other);

	Vector3f normal;
	Vector3f origin;
	float damping;
};

class LimitedPlane
{
public:
	LimitedPlane(void);
	~LimitedPlane(void);
	LimitedPlane(Vector3f v1, Vector3f v2, float damping);
	LimitedPlane(const LimitedPlane& other);

	float isLeft(Vector3f c);
	bool pointIsOnPlane(Vector3f p);
	//bool testCollision(Particle* p);

	Vector3f normal;
	Vector3f v1;
	Vector3f v2;
	float damping;
	ForceGenerator* frictionGenerator;
};

